#ifndef __STDDATABASE_H__
#define __STDDATABASE_H__

#include <string>
#include <vector>
#include <sqlite3.h>
#include <iostream>

struct QueryResult
{
    /* 定义查询结构的结果集 */
    std::vector<std::vector<std::string>> rows;
    std::vector<std::string> columnName;
};

class StdDataBase
{

public:
    /* 虚析构 */
    virtual ~StdDataBase(){};

    /* 连接数据库 */
    virtual bool connectDB(const std::string &connStr) = 0;

    /* 执行Sql语句(exec) */
    virtual bool executeSql(const std::string &sql) = 0;

    /* 查询Sql语句(select) */
    virtual QueryResult querySql(const std::string &sql) = 0;

    /* 关闭数据库连接 */
    virtual void close() = 0;

private:

};

#endif //__STDDATABASE_H__